<!doctype html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../assert_selection.js"></script>
<script>
if (window.internals)
  internals.settings.setEditingBehavior('win');

selection_test(
  '<div contenteditable dir="rtl">|abc def hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc |def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-0 left word');

selection_test(
  '<div contenteditable dir="rtl">a|bc def hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc |def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-1 left word');

selection_test(
  '<div contenteditable dir="rtl">ab|c def hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc |def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-2 left word');

selection_test(
  '<div contenteditable dir="rtl">abc| def hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc |def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-3 left word');

selection_test(
  '<div contenteditable dir="rtl">abc |def hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def |hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-4 left word');

selection_test(
  '<div contenteditable dir="rtl">abc d|ef hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def |hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-5 left word');

selection_test(
  '<div contenteditable dir="rtl">abc de|f hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def |hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-6 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def| hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def |hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-7 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def |hij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij |\u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-8 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def h|ij אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij |\u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-9 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hi|j אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij |\u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-10 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij| אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij |\u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-11 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij |אאא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא |בבב צצצ opr uvw xyz</div>',
  '6-12 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij א|אא בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא |בבב צצצ opr uvw xyz</div>',
  '6-13 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אא|א בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא |בבב צצצ opr uvw xyz</div>',
  '6-14 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא| בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 |\u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-15 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא |בבב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב |צצצ opr uvw xyz</div>',
  '6-16 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא ב|בב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב |צצצ opr uvw xyz</div>',
  '6-17 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בב|ב צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב |צצצ opr uvw xyz</div>',
  '6-18 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב| צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 |\u05E6\u05E6\u05E6 opr uvw xyz</div>',
  '6-19 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב |צצצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ |opr uvw xyz</div>',
  '6-20 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צ|צצ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ |opr uvw xyz</div>',
  '6-21 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצ|צ opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ |opr uvw xyz</div>',
  '6-22 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ| opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 |opr uvw xyz</div>',
  '6-23 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ |opr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr |uvw xyz</div>',
  '6-24 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ o|pr uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr |uvw xyz</div>',
  '6-25 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ op|r uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr |uvw xyz</div>',
  '6-26 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr| uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr |uvw xyz</div>',
  '6-27 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr |uvw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw |xyz</div>',
  '6-28 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr u|vw xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw |xyz</div>',
  '6-29 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uv|w xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw |xyz</div>',
  '6-30 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uvw| xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw |xyz</div>',
  '6-31 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uvw |xyz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz|</div>',
  '6-32 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uvw x|yz</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz|</div>',
  '6-33 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uvw xy|z</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij \u05D0\u05D0\u05D0 \u05D1\u05D1\u05D1 \u05E6\u05E6\u05E6 opr uvw xyz|</div>',
  '6-34 left word');

selection_test(
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uvw xyz|</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl">abc def hij אאא בבב צצצ opr uvw xyz|</div>',
  '6-35 left word');
</script>
